类获取java中的超级接口
我已经尝试这么做了很长一段时间了,但似乎无法获得所需的输出
我想做的是让类名为java.util.Vector
获取以下信息:
- 直接实现的接口如果
java.util.Vector
李> - 由超类直接实现的接口李>
- 以及这些接口的所有超级接口李>
任何帮助都将不胜感激
你可以在下面搜索框中键入要查询的问题!
我已经尝试这么做了很长一段时间了,但似乎无法获得所需的输出
我想做的是让类名为java.util.Vector
获取以下信息:
java.util.Vector
李>
任何帮助都将不胜感激
# 1 楼答案
如果你愿意使用另一个库:使用apache-commons-lang
# 2 楼答案
你可以用reflection来做BFS
从只包含} 和^{} 迭代地增加集合中的新元素
Vector
的Set<Class<?>>
开始,使用^{将刚刚添加的元素添加到
Queue
[这是BFS运行所需的]。当队列为空时终止后期处理:迭代} 获取作为接口的对象
Set
,并仅使用^{应该是这样的:
# 3 楼答案
虽然是爪哇。util。Vector不是一个接口,因此你不能用接口来扩展它,你可以使用Reflections这样的库来适应这些特性Reflections允许您扫描类路径并查询一组条件,例如实现或扩展给定类/接口的条件。我在几个项目中成功地使用了它,我需要扫描接口实现和注释类
下面是显式链接:http://code.google.com/p/reflections/
此外,如果您只是想了解一个类扩展/实现了什么类/接口,那么可以通过class属性使用类反射api
以下是一些例子:
# 4 楼答案
来自Apache Commons Lang的^{} 方法将执行以下操作: